<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, width=device-width">
    <title>地图导航定位</title>
    <style rel="stylesheet" type="text/css">
        /* 去除正文区域内外间距：全屏 */
        body {
            margin: 0;
            padding: 0;
        }

        /* 地图加载容器的大小：全屏 */
        #container {
            width: 100%;
            height: 100vh;
        }
    </style>
</head>
<body>
<!--地图呈现容器-->
<div id="container"></div>
<!--设置全局变量-->
<script type="text/javascript">
    // 将密钥设置到全局：后面很多代码都需要使用
    // 再当前window对象中，追加指定名称的属性
    window._AMapSecurityConfig = {
        securityJsCode: "299be8cbb451708339e4724f29255090"
    };
</script>
<!--加载官方地图脚本：请附加申请的key-->
<script type="text/javascript" src="https://webapi.amap.com/maps?v=2.0&key=f9694f75236d04d09402f8c97181e150"></script>
// 自定义脚本开发
<script type="text/javascript">
    // 这里的代码默认执行
    // 创建地图对象，进行初始化("绑定的容器", {配置})
    var map = new AMap.Map(
        "container",        // 加载地图的容器id
        {
            zoom: 18,       // 初始地图的缩放比例
            center: [114.298572, 30.584355]     // 初始中心点的[经度，纬度]
        }
    );
    window.onload = function () {
        window.swift.setCurrentLocation()
    }

    function setLocation(lon, lat) {
        //重新设置地图的中心点
        map.setZoomAndCenter(20, [lon, lat]);

        //设置当前中心点的标记
        var marker = new AMap.Marker({
            map,
            icon: 'https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png',
            position: [lon, lat]
        });

        //加入到地图中
        map.add(marker);
        //为地图新增插件能力：搜索
        map.plugin(['AMap.PlaceSearch'], function(){

            //创建搜索功能对象，提供搜索设置
            var MSearch = new AMap.PlaceSearch({
                map,                //绑定的地图组件
                pageSize: 4,        //每页多少条
                pageIndex: 1,       //第几页
                extensions: 'base'  //扩展：基本信息
            });

            //为地图设置监听：当搜索结果完成时
            AMap.Event.addListener(MSearch, 'complete', (res)=>{
                //调用鸿蒙方法，传回搜索结果
                //通讯传递，只能是字符串string
                window.swift.receiveNearPlace(JSON.stringify(res.poiList.pois))
            });

            //执行搜索：自动标记
            MSearch.searchNearBy('停车场', [lon,lat]);
        });
    }

</script>
</body>

</html>